home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Grab Bag
/
Shareware Grab Bag.iso
/
009
/
dm501.unp
< prev
next >
Wrap
Text File
|
1987-06-12
|
3KB
|
111 lines
How to unprotect DIAGRAM MASTER, version 5.01:
First, MAKE A COPY of the original DIAGRAM MASTER diskette. NEVER tamper with
your original disk!
Using the COPY, RENAME DM.EXE to DM.XEX
DEBUG DM.XEX
At locations 4332, 4392, and 43B7 is the code which checks drive A for the
presence of the signature sector. This code typically looks like:
MOV AL,01
MOV AH,04
INT 13
We will patch the program so that it thinks all is well and doesn't bother to
check the floppy:
-u 4320
xxxx:4320 16 PUSH SS
xxxx:4321 2A00 SUB AL,[BX+SI]
xxxx:4323 B600 MOV DH,00
xxxx:4325 B500 MOV CH,00
xxxx:4327 B101 MOV CL,01
xxxx:4329 B001 MOV AL,01
xxxx:432B B404 MOV AH,04
xxxx:432D 06 PUSH ES
xxxx:432E 33DB XOR BX,BX
xxxx:4330 8EC3 MOV ES,BX
xxxx:4332 CD13 INT 13 <---here's one!
xxxx:4334 07 POP ES
xxxx:4335 7338 JNB 436F
xxxx:4337 80FC06 CMP AH,06
xxxx:433A 74E3 JZ 431F
xxxx:433C 80FC80 CMP AH,80
xxxx:433F 7405 JZ 4346
-u 4380
xxxx:4380 2A00 SUB AL,[BX+SI]
xxxx:4382 8A362900 MOV DH,[0029]
xxxx:4386 8A2E2800 MOV CH,[0028]
xxxx:438A 8A0E2400 MOV CL,[0024]
xxxx:438E B001 MOV AL,01
xxxx:4390 B404 MOV AH,04
xxxx:4392 CD13 INT 13 <---here's one!
xxxx:4394 59 POP CX
xxxx:4395 7308 JNB 439F
xxxx:4397 E2E4 LOOP 437D
xxxx:4399 59 POP CX
xxxx:439A A33A00 MOV [003A],AX
xxxx:439D EB2E JMP 43CD
xxxx:439F B90200 MOV CX,0002
-u 43b3
xxxx:43B3 B001 MOV AL,01
xxxx:43B5 B404 MOV AH,04
xxxx:43B7 CD13 INT 13 <---here's one!
xxxx:43B9 59 POP CX
xxxx:43BA 80FC04 CMP AH,04
xxxx:43BD 740B JZ 43CA
xxxx:43BF E2E1 LOOP 43A2
xxxx:43C1 59 POP CX
xxxx:43C2 C7063A00FFFF MOV WORD PTR [003A],FFFF
xxxx:43C8 EB03 JMP 43CD
xxxx:43CA 59 POP CX
xxxx:43CB E2AC LOOP 4379
xxxx:43CD C3 RET
xxxx:43CE 55 PUSH BP
xxxx:43CF 8BEC MOV BP,SP
xxxx:43D1 1E PUSH DS
xxxx:43D2 B8E703 MOV AX,03E7
So here goes:
-a 4332
xxxx:4332 NOP ;get rid of disk interrupt
xxxx:4333 NOP
xxxx:4334 <cr> ;to break out of assembly
-a 4335 ;to "fix" the jump instruction
xxxx:4335 JMP 436F
xxxx:4337 <cr> ;break out
-a 4392
xxxx:4392 NOP ;get rid of disk interrupt
xxxx:4393 NOP
xxxx:4394 <cr> ;break out
-a 4395
xxxx:4395 JMP 439F ;fix the jump
xxxx:4397 <cr> ;break out
-a 43B7
xxxx:43B7 NOP ;get rid of disk interrupt
xxxx:43B8 NOP
xxxx:43B9 <cr> ;break out
-a 43BD
xxxx:43BD JMP 43CA ;fix last jump
xxxx:43BF <cr> ;break out
-w ;write it back out
Writing 61C7 bytes
-q ;end debug session
RENAME DM.XEX DM.EXE ;restore the name
Diagram Master, version 5.01, is now unprotected. Have fun!
LET THERE BE SOFTWARE!